/*
 * Open Sans
 * https://fonts.googleapis.com/css?family=Open+Sans:300,300i,400,400i,600,600i,700,700i&amp;subset=latin-ext
 */
 @font-face {
  font-family: 'Open Sans';
  font-style: normal;
  font-weight: 300;
  src: local('Open Sans Light'), local('OpenSans-Light'),
       url('./fonts/open-sans-v15-latin_latin-ext-300.woff') format('woff');
}
@font-face {
  font-family: 'Open Sans';
  font-style: italic;
  font-weight: 300;
  src: local('Open Sans Light Italic'), local('OpenSans-LightItalic'),
       url('./fonts/open-sans-v15-latin_latin-ext-300italic.woff') format('woff');
}
@font-face {
  font-family: 'Open Sans';
  font-style: normal;
  font-weight: 400;
  src: local('Open Sans Regular'), local('OpenSans-Regular'),
       url('./fonts/open-sans-v15-latin_latin-ext-regular.woff') format('woff');
}
@font-face {
  font-family: 'Open Sans';
  font-style: italic;
  font-weight: 400;
  src: local('Open Sans Italic'), local('OpenSans-Italic'),
       url('./fonts/open-sans-v15-latin_latin-ext-italic.woff') format('woff');
}
@font-face {
  font-family: 'Open Sans';
  font-style: normal;
  font-weight: 600;
  src: local('Open Sans SemiBold'), local('OpenSans-SemiBold'),
       url('./fonts/open-sans-v15-latin_latin-ext-600.woff') format('woff');
}
@font-face {
  font-family: 'Open Sans';
  font-style: italic;
  font-weight: 600;
  src: local('Open Sans SemiBold Italic'), local('OpenSans-SemiBoldItalic'),
       url('./fonts/open-sans-v15-latin_latin-ext-600italic.woff') format('woff');
}
@font-face {
  font-family: 'Open Sans';
  font-style: normal;
  font-weight: 700;
  src: local('Open Sans Bold'), local('OpenSans-Bold'),
       url('./fonts/open-sans-v15-latin_latin-ext-700.woff') format('woff');
}
@font-face {
  font-family: 'Open Sans';
  font-style: italic;
  font-weight: 700;
  src: local('Open Sans Bold Italic'), local('OpenSans-BoldItalic'),
       url('./fonts/open-sans-v15-latin_latin-ext-700italic.woff') format('woff');
}

/*
 * DejaVu Sans Mono
 */
@font-face {
  font-family: "DejaVu Sans Mono";
  src: local('DejaVu Sans Mono'), url('./fonts/DejaVuSansMono.ttf');
}
@font-face {
  font-family: "DejaVu Sans Mono";
  font-weight: bold;
  src: url('./fonts/DejaVuSansMono-Bold.ttf');
}
@font-face {
  font-family: "DejaVu Sans Mono";
  font-style: oblique;
  font-weight: bold;
  src: url('./fonts/DejaVuSansMono-BoldOblique.ttf');
}
@font-face {
  font-family: "DejaVu Sans Mono";
  font-style: italic;
  font-weight: bold;
  src: url('./fonts/DejaVuSansMono-BoldOblique.ttf');
}
@font-face {
  font-family: "DejaVu Sans Mono";
  font-style: italic;
  src: url('./fonts/DejaVuSansMono-Oblique.ttf');
}
@font-face {
  font-family: "DejaVu Sans Mono";
  font-style: oblique;
  src: url('./fonts/DejaVuSansMono-Oblique.ttf');
}

.editor-root {
	font-family: "Open Sans", "Clear Sans", "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-size: 16px;
	line-height: 1.6;

	span code,
	td code,
	th code,
	code,
	code[class*="language-"],
	.CodeMirror,
	pre.ag-paragraph {
		font-family: "DejaVu Sans Mono", "Source Code Pro", "Droid Sans Mono", Consolas, monospace;
		font-size: 14px;
	}

	li {
		list-style-type: unset;
	}

	kbd {
		color: var(--editorColor);
		background: var(--floatBgColor);
		border: 1px solid var(--floatBorderColor);
		border-radius: 4px;
		display: inline-block;
		font-size: .8em;
		padding: 0px 5px;
		box-shadow: inset 0 -1px 0 var(--floatBorderColor);
	}

	/* cover default flowchart.js and sequence style */
	figure[data-role] svg rect[fill="#ffffff"] {
		fill: var(--editorBgColor);
	}

	figure[data-role] svg rect[stroke="#000000"] {
		stroke: var(--editorColor);
	}

	figure[data-role] svg text[fill="#000000"] {
		fill: var(--editorColor);
	}

	figure[data-role] svg path[stroke="#000000"] {
		stroke: var(--editorColor);
	}

	figure[data-role] svg path[fill="#ffffff"] {
		fill: var(--editorBgColor);
	}

	figure[data-role] svg path[fill="#000000"] {
		fill: var(--editorColor);
	}

	figure[data-role] svg use[fill="black"] {
		fill: var(--editorColor);
	}

	figure[data-role] svg use[fill="#000000"] {
		fill: var(--editorColor);
	}

	pre.ag-active.ag-front-matter::after, pre.ag-active[data-role="mermaid"]::after, pre.ag-active[data-role="flowchart"]::after, pre.ag-active[data-role="sequence"]::after, pre.ag-active[data-role="vega-lite"]::after, pre.ag-active.ag-multiple-math::after, pre.ag-active.ag-fence-code::after {
		bottom: -1.5em;
	}

	/*
	* Prism.js theme
	*/
	@import url("prismjs/light.theme.css");
}

@media not print {

	.editor-root {
		#ag-editor-id {
			max-width: var(--editorAreaWidth);
			min-width: 400px;
			min-height: 100%;
			margin: 0 auto;
			padding: 20px 50px 100px 50px;
			box-sizing: border-box;
		}

		#ag-editor-id, [contenteditable] {
			outline: none;
		}

		.ag-gray {
			color: var(--editorColor30);
			text-decoration: none;
		}

		.ag-header-tight-space {
			margin-left: -.3em;
		}

		.ag-image-src {
			word-break: break-all;
		}

		.v-modal {
			background: var(--maskColor) !important;
		}

		body>*:first-child {
			margin-top: 0 !important;
		}

		body>*:last-child {
			margin-bottom: 0 !important;
		}

		a {
			color: var(--themeColor);
		}

		h1,
		h2,
		h3,
		h4,
		h5,
		h6 {
			position: relative;
			margin-top: 1rem;
			margin-bottom: 1rem;
			font-weight: bold;
			line-height: 1.4;
			cursor: text;
			color: var(--editorColor80);
		}

		h1:hover a.anchor,
		h2:hover a.anchor,
		h3:hover a.anchor,
		h4:hover a.anchor,
		h5:hover a.anchor,
		h6:hover a.anchor {
			/*background: url("../../images/modules/styleguide/para.png") no-repeat 10px center;*/
			text-decoration: none;
		}

		h1 tt,
		h1 code {
			font-size: inherit;
		}

		h2 tt,
		h2 code {
			font-size: inherit;
		}

		h3 tt,
		h3 code {
			font-size: inherit;
		}

		h4 tt,
		h4 code {
			font-size: inherit;
		}

		h5 tt,
		h5 code {
			font-size: inherit;
		}

		h6 tt,
		h6 code {
			font-size: inherit;
		}

		h1 {
			font-size: 30px;
		}

		h2 {
			font-size: 24px;
		}

		h3 {
			font-size: 22px;
		}

		h4 {
			font-size: 20px;
		}

		h5 {
			font-size: 18px;
		}

		h6 {
			font-size: 16px;
		}

		h1 .ag-gray {
			font-size: 21px;
		}
		h2 .ag-gray {
			font-size: 20px;
		}
		h3 .ag-gray {
			font-size: 19px;
		}
		h4 .ag-gray {
			font-size: 18px;
		}
		h5 .ag-gray {
			font-size: 17px;
		}
		h6 .ag-gray {
			font-size: 16px;
		}

		p,
		blockquote,
		ul,
		ol,
		dl,
		table {
			margin: 0.5em 0;
		}

		li>ol,
		li>ul {
			margin: 0 0;
		}

		hr {
			height: 4px;
			padding: 0;
			margin: 16px 0;
			background-color: #e7e7e7;
			border: 0 none;
			overflow: hidden;
			box-sizing: content-box;
		}

		body>h2:first-child {
			margin-top: 0;
			padding-top: 0;
		}

		body>h1:first-child {
			margin-top: 0;
			padding-top: 0;
		}

		body>h1:first-child+h2 {
			margin-top: 0;
			padding-top: 0;
		}

		body>h3:first-child,
		body>h4:first-child,
		body>h5:first-child,
		body>h6:first-child {
			margin-top: 0;
			padding-top: 0;
		}

		a:first-child h1,
		a:first-child h2,
		a:first-child h3,
		a:first-child h4,
		a:first-child h5,
		a:first-child h6 {
			margin-top: 0;
			padding-top: 0;
		}

		h1 p,
		h2 p,
		h3 p,
		h4 p,
		h5 p,
		h6 p {
			margin-top: 0;
		}

		li p.first {
			display: inline-block;
		}

		li.ag-tight-list-item > p {
			padding: 0;
			margin: 0;
		}

		ul,
		ol {
			padding-left: 30px;
		}

		ul:first-child,
		ol:first-child {
			margin-top: 0;
		}

		ul:last-child,
		ol:last-child {
			margin-bottom: 0;
		}

		blockquote {
			position: relative;
			padding: 0 30px;
			color: var(--editorColor50);
		}

		blockquote::before {
			content: '';
			display: block;
			height: 100%;
			width: 2px;
			position: absolute;
			left: 15px;
			top: 0;
			background: var(--themeColor);
		}

		blockquote blockquote {
			padding-right: 0;
		}

		table {
			padding: 0;
			word-break: initial;
		}

		table tr {
			margin: 0;
			padding: 0;
		}

		table thead tr,
		table tr:nth-child(2n) {
			background-color: var(--editorColor04);
		}

		table tr th {
			font-weight: bold;
			border: 1px solid var(--tableBorderColor);
			text-align: left;
			margin: 0;
			padding: 6px 13px;
		}

		table tr td {
			border: 1px solid var(--tableBorderColor);
			text-align: left;
			margin: 0;
			padding: 6px 13px;
		}

		table tr th:first-child,
		table tr td:first-child {
			margin-top: 0;
		}

		table tr th:last-child,
		table tr td:last-child {
			margin-bottom: 0;
		}

		span code,
		td code,
		th code {
			background-color: var(--codeBlockBgColor);
			border-radius: 3px;
			padding: 0;
			/*font-family: Menlo, Monaco, Consolas, "Courier New", monospace;*/
			padding: 2px 4px 0px 4px;
			font-size: 85%;
			margin: 0;
			padding: 0.2em 0.4em;
			color: var(--editorColor);
		}

		:not(pre) > code[class*="language-"],
		pre:not(.CodeMirror-line),
		pre[class*="language-"],
		pre.ag-paragraph {
			overflow: visible;
			font-size: 90%;
			line-height: 1.6;
			background: var(--codeBlockBgColor);
			border: 1px solid var(--editorColor10);
			border-radius: 3px;
			color: var(--editorColor50);
		}

		.ag-hide.ag-ruby > .ag-ruby-render,
		.ag-hide.ag-math > .ag-math-render {
			color: var(--editorColor);
		}
		blockquote .ag-hide.ag-ruby > .ag-ruby-render,
		blockquote .ag-hide.ag-math > .ag-math-render {
			color: var(--editorColor50);
		}

		.ag-ruby > .ag-ruby-render,
		.ag-math > .ag-math-render {
			color: var(--editorColor);
			background: var(--floatBgColor);
			box-shadow: var(--floatShadow);
		}
		.ag-ruby > .ag-ruby-render::before,
		.ag-math > .ag-math-render::before {
			border-bottom-color: var(--floatBgColor);
		}

		#ag-editor-id pre.ag-html-block {
			background: transparent;
			padding: 0 .5rem;
			margin-top: 0;
		}

		#ag-editor-id pre.ag-active.ag-html-block {
			background: var(--codeBlockBgColor);
		}

		.ag-image-marked-text::before {
			background: url(../lib/assets/icons/image_light.png);
			background-size: cover;
		}

		.ag-image-marked-text.ag-image-fail::before {
			background-image: url(../lib/assets/icons/image_light_fail.png);
			background-size: cover;
		}

		.ag-inline-image.ag-image-success .ag-image-marked-text::before {
			background: url(../lib/assets/icons/image_dark.png);
			background-size: cover;
		}

		.ag-inline-image.ag-image-success .ag-image-marked-text.ag-image-fail::before {
			background-image: url(../lib/assets/icons/image_dark_fail.png);
			background-size: cover;
		}

		.ag-front-icon {
			fill: var(--editorColor30);
		}

		.ag-front-icon::before {
			border: 3px solid var(--editorColor50);
			border-bottom: none;
			border-left-color: transparent;
			border-right-color: transparent;
		}
	}
} /* end not print */

@media print {
	.editor-root {
		font-size: 13px;

		table,
		pre {
			page-break-inside: avoid;
		}
		pre {
			word-wrap: break-word;
		}
	}
}

body.dark .ag-image-marked-text::before {
	background: url(../lib/assets/icons/image_dark.png);
	background-size: cover;
}

body.dark .ag-image-marked-text.ag-image-fail::before {
	background-image: url(../lib/assets/icons/image_dark_fail.png);
	background-size: cover;
}
